package com.pan.alg.niuke.tree;

/**
 * BM32 合并二叉树
 * 已知两颗二叉树，将它们合并成一颗二叉树。合并规则是：都存在的结点，就将结点值加起来，否则空的位置就由另一个树的结点来代替。
 */
public class TreeMerge {

    /**
     *
     * @param t1 TreeNode类
     * @param t2 TreeNode类
     * @return TreeNode类
     */
    public TreeNode mergeTrees (TreeNode t1, TreeNode t2) {

        if(t1==null){
            return t2;
        }else if(t2==null){
            return t1;
        }

        TreeNode head = new TreeNode(t1.val+t2.val);

        head.left = mergeTrees(t1.left,t2.left);
        head.right = mergeTrees(t1.right,t2.right);

        return head;
    }


}
